Imaging apparatus and imaging system

ABSTRACT

An imaging apparatus to communicate with an external apparatus over a network and mount a first storage and/or a second storage includes a receiving unit, a mounting unit, and a control unit. The receiving unit can receive a first mount command to mount the first storage and a second mount command to mount the second storage. The control unit instructs the mounting unit to mount the first storage and/or the second storage. If a mount command received is a first mount command, the control unit instructs the mounting unit to mount the first storage by a first access protocol for accessing the first storage. If the mount command received is a second mount command, the control unit instructs the mounting unit to mount the second storage by a second access protocol which is an access protocol for accessing the second storage and is different from the first access protocol.

TECHNICAL FIELD

The present invention relates to an imaging us and an imaging system. Inparticular, the present invention relates to an imaging apparatus andimaging system which record data in a storage.

BACKGROUND ART

In recent years, some large capacity storages having high functionalitymay be cc structed on an IP network. As such a storage, a networkstorage system may be mounted by a host apparatus to make it available.Here, the term “mount” refers to allowing a storage to be written orread to or from it, for example.

With spread of network storages, various protocols exist for accesses tonetwork storages. Such protocols may be NFS (Network File System), SMB,CIFS (Common Internet File System), or CDMI (Cloud Data ManagementInterface), for example.

PTL 1 discloses a storage system which accepts different accesses from aplurality of external apparatuses.

In the past, an imaging apparatus which transmits a captured image to aclient apparatus may have a group of commands (command group) toinstruct to change a setting for the imaging apparatus from a clientapparatus and to start a distribution of an image. Recently, some ofsuch command groups have been known which are defined by a standardsettled by ONVIF (Open Network Video Interface Forum).

However, technologies in the past do not assume that an imagingapparatus, for example, is allowed to mount a network storage. Inaddition, because many kinds of network storages are available, a usermay be required to perform a significantly complicated setting jobs formounting them.

As commands for mounting a network storage in an imaging apparatus,common commands (standardized commands) such as a command group settledby ONVIF may be assumed to be used among imaging apparatuses fromvarious manufactures.

However, even under such an assumption, compatibility of such commandmay be difficult to obtain from a viewpoint that a plurality of networkstorages for different file systems from each other must be designatedby using the commands.

The present invention was made in view of such a viewpoint, and animaging apparatus may allow easy mount of first and second storageswhich are accessed in different manners from each other.

CITATION LIST Patent Literature

PTL 1: Japanese Patent Laid-Open No. 2003-241903

SUMMARY OF INVENTION

An imaging apparatus which communicates with an external apparatus overa network and mounts a first storage and/or a second storage includes areceiving unit capable of receiving a first mount command correspondingto a first protocol to allow the imaging apparatus to mount the firststorage and a second mount command corresponding to the first protocolto allow the imaging apparatus to mount the second storage from theexternal apparatus over the network, a mounting unit configured to mountthe first storage and/or the second storage; and a control unitconfigured to, if a mount command received by the receiving unit is afirst mount command, instruct the mounting unit to mount the firststorage by a first access protocol for accessing the first storage and,if the mount command received by the receiving unit is a second mountcommand, instruct the mounting unit to mount the second storage by asecond access protocol which is an access protocol for accessing thesecond storage and is different from the first access protocol.

Further features of the present invention will become apparent from thefollowing description of exemplary embodiments with reference to theattached drawings.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a system configuration diagram for explaining a configurationof an imaging system according to a first exemplary embodiment of thepresent invention.

FIG. 2A is a block diagram illustrating an internal configuration of asurveillance camera included in an imaging system according to the firstexemplary embodiment of the present invention.

FIG. 2B is a block diagram illustrating an internal configuration of aclient apparatus included in an imaging system according to the firstexemplary embodiment of the present invention.

FIG. 3 is a configuration diagram of parameters held by the surveillancecamera according to the first exemplary embodiment of the presentinvention.

FIG. 4A illustrates an example of a definition of a StorageConfigurationaccording to the first exemplary embodiment of the present invention.

FIG. 4B illustrates an example of a definition of a StorageConfigurationaccording to the first exemplary embodiment of the present invention.

FIG. 4C illustrates an example of a definition of a StorageConfigurationaccording to the first exemplary embodiment of the present invention.

FIG. 4D illustrates an example of a definition of a StorageConfigurationaccording to the first exemplary embodiment of the present invention.

FIG. 4E illustrates an example of a definition of a StorageConfigurationaccording to the first exemplary embodiment of the present invention.

FIG. 5 illustrates an example of a configuration of commands andresponses in GetStorageConfigurations according to the first exemplaryembodiment of the present invention.

FIG. 6 illustrates an example of a configuration of commands andresponses in GetStorageConfigurationOptions according to the firstexemplary embodiment of the present invention.

FIG. 7 illustrates an example of a configuration of commands andresponses in SetStorageConfigurationOptions according to the firstexemplary embodiment of the present invention.

FIG. 8 is a command sequence diagram between the surveillance camera andthe client apparatus according to the first exemplary embodiment of thepresent invention.

FIG. 9 illustrates a command sequence between the surveillance cameraand the client apparatus according to the first exemplary embodiment ofthe present invention.

FIG. 10 illustrates a command sequence among the surveillance camera,the client apparatus and a network storage according to the firstexemplary embodiment of the present invention.

FIG. 11 is a diagram for explaining a table illustrating correspondencebetween Token types of a StorageConfiguration and accessing protocoltypes according to the first exemplary embodiment of the presentinvention.

FIG. 12 is a flowchart for explaining command reception processing inthe surveillance camera according to the first exemplary embodiment ofthe present invention.

FIG. 13 illustrates an example of a StorageConfiguration screenaccording to the first exemplary embodiment of the present invention.

DESCRIPTION OF EMBODIMENTS

The present invention will be described below in detail by describingexemplary embodiments thereof. Configurations according to exemplaryembodiments will be given for illustration purpose only, and the presentinvention is not limited to the illustrated configurations. It isassumed that command according to the following exemplary embodimentsare defined based on Open Network VideoInterface Forum (hereinafter,sometimes be called ONVIF), for example.

In order to define data or a command such as a StorageConfiguration, XMLSchema Definition language (hereinafter, called an XSD) used in ONVIFstandard is used.

First Exemplary Embodiment

FIG. 1 illustrates a system configuration for illustrating an imagingsystem including a surveillance camera 1000 which is an imagingapparatus and a client apparatus 2000 according to an exemplaryembodiment. The client apparatus 2000 is an external apparatus accordingto this exemplary embodiment. The surveillance camera 1000 and theclient apparatus 2000 are connected mutually communicably through an IPnetwork 1500 (over a network).

A network attached storage 1100 is connected to the IP network 1500.Hereinafter, a network attached storage will be called a NAS. The NAS1100 may include interfaces such as a CIFS (Common Internet FileSystem), an NFS (Network File System), and an SMB, for example.

The NAS 1100 may be mounted by the surveillance camera 1000 to beconnected to the IP network 1500 so as to allow access from thesurveillance camera 1000.

A cloud storage 1200 is usable through the Internet 1600 (what-is-calleda cloud). The cloud storage 1200 may include a CDMI (Cloud DataManagement Interface), for example. The cloud storage 1200 is mounted bythe surveillance camera 1000 to be connected to the IP network 1500 soas to allow access from the surveillance camera 1000.

The client apparatus 2000 transmits commands to change an imagingparameter and start video streaming, which will be described below, tothe surveillance camera 1000, for example. The surveillance camera 1000transmits to the client apparatus 2000 responses to those commands and avideo stream.

The imaging system according to this exemplary embodiment is an exampleof a transmitting/receiving system. The surveillance camera 1000according to this exemplary embodiment is an imaging apparatus whichcaptures a moving image and particularly is a network camera usable forsurveillance.

The IP network 1500 may include a plurality of routers, a switch, and acable which satisfy a communication standard for Ethernet (registeredtrademark), for example. However, according to this exemplaryembodiment, any communication standards, sizes and configurations may beused as far as they allow communication between the surveillance camera1000 and the client apparatus 2000.

For example, the IP network 1500 may include the Internet, a wired LAN(Local Area Network), a wireless LAN, and a WAN (Wide Area Network). Thesurveillance camera 1000 according to this exemplary embodiment maysupport PoE (Power Over Ethernet (registered trademark)), for example,and may receive power supply through a LAN cable.

FIGS. 2A and 2B are block diagrams illustrating internal configurationsof the surveillance camera 1000 and client apparatus 2000 according tothis exemplary embodiment. FIG. 2A is a block diagram illustrating aninternal configuration of the surveillance camera 1000. On the otherhand, FIG. 2B is a block diagram illustrating an internal configurationof the client apparatus 2000.

Referring to FIG. 2A, a control unit 1001 generally controls thesurveillance camera 1000. The control unit 1001 may include a CPU(Central Processing Unit), for example. A storage unit 1002 may be usedmainly as storage areas for various data, such as a storage area for aprogram to be executed by the control unit 1001, a work area usableduring execution of a program, and a storage area for an image capturedby the image capturing unit 1003.

An image capturing unit 1003 converts an analog signal acquired bycapturing an image of a subject formed by an imaging optical system ofthe surveillance camera 1000 to digital data and outputs them as acaptured image to the storage unit 1002. The control unit 1001, whichwill be described below, receives an image acquisition event from theimage capturing unit 1003 if a captured image is output from the imagecapturing unit 1003 to the storage unit 1002.

A compression encoding unit 1004 performs a compression encoding processbased on PEG or H.264 on the captured image output by the imagecapturing unit 1003 to create image data and outputs the created imagedata to the storage unit 1002. In this case, the compression encodingunit 1004 causes the control unit 1001 to issue a VIDEO transmissiontrigger and notifies that image data that may be distributed-d has beenoutput to the storage unit 1002.

A communication unit 1005 is used in a case where a control command isreceived from an external apparatus, where a response to a controlcommand and a stream including image data are to be transmitted to anexternal apparatus or the like. The communication unit 1005 according tothis exemplary embodiment corresponds to a distribution unit whichdistributes image data output from the compression encoding unit 1004.In a case where the communication unit 1005 receives a command from anexternal apparatus, the control unit 1001 receives a command receptionevent from the communication unit 1005.

An imaging control unit 1006 is usable for controlling a tilt mechanism,a pan mechanism, or a zoom mechanism in accordance with a value of a panangle, a tilt angle or a zoom scaling factor input by the control unit1001. Thus, the imaging range of the image capturing unit 1003 is drivenin a tilt direction and a pan direction. This drives the zoom scalingfactor so as to correspond to the imaging range.

The imaging control unit 1006 provides current operation states of apan, tilt, and zooming mechanisms (not illustrated) as PTZ Statusinformation to the control unit 1001 by setting a PTZStatus transmissionflag.

According to this exemplary embodiment, each of the compression encodingunit 1004 and the imaging control unit 1006 may be a sub-CPU, forexample. According to this exemplary embodiment, each of the panmechanism, tilt mechanism, and zooming mechanism may include a steppingmotor and a gear, for example. Each of the pan mechanism, tiltmechanism, and zooming mechanism may be an example of a changing unitconfigured to change the position of the image capturing unit 1003.

An internal recording medium 1007 is internally provided in thesurveillance camera 1000. The internal recording medium 1007 is astorage usable by the control unit 1001 to save data, for example.

Here, the internal recording medium 1007 may include an SD memory cardand a USB drive insertable and removable to and from the surveillancecamera 1000 or a hard disk drive removably attached to the surveillancecamera 1000, and a file system supporting them, for example.

Next, referring to FIG. 2B, a control unit 2001 may be a CPU andgenerally control the client apparatus 2000, for example. A storage unit2002 may be used mainly as storage areas for various data, such as astorage area for a program to be executed by the control unit 2001, anda work area usable during execution of a program.

A display unit 2003 may be an LCD, or an organic electroluminescencedisplay, for example, and may display various setting screens, a viewerfor video images received from the surveillance camera 1000, and amessage to a user of the video client apparatus 2000. The varioussetting screens may include a StorageConfiguration screen, which will bedescribed below.

An input unit 2004 may include a button, a cross key, a touch panel, anda mouse, for example, and notifies details of a screen operationperformed by a user to the control unit 2001. A decoding unit 2005decodes compression encoded image data received through a communicationunit 2006 based on a format such as PEG or H.264 and decompresses theminto the storage unit 2002.

The communication unit 2006 is usable for transmitting a control commandto the surveillance camera 1000 and receiving a response to a controlcommand and a stream including image data to the surveillance camera1000. According to this exemplary embodiment, the decoding unit 2005 maybe a sub-CPU, for example.

Having described the internal configurations of the surveillance camera1000 and the client apparatus 2000 with reference to FIGS. 2A and 2B,the processing blocks illustrated in FIGS. 2A and 2B are given forillustrating an exemplary embodiment of the surveillance camera andclient apparatus according to the present invention. The presentinvention is not limited thereto. Various modifications and changes maybe made thereto without departing from the spirit and scope of thepresent invention, such as inclusion of an audio input unit, an audiooutput unit, and an image analysis processing unit.

Next, with reference to FIGS. 3 to 7, names and details of commands andparameters used in this exemplary embodiment will be described below.FIG. 3 illustrates a structure of parameters held in (the storage unit1002 of) the surveillance camera 1000 according to this exemplaryembodiment.

Hereinafter, a VideoSourceConfiguration, which will be described below,will sometimes be called a VSC. Also, a VideoEncoderConfiguration willsometimes be called a VEC.

A MediaProfile 3100 illustrated in FIG. 3 is held by the surveillancecamera 1000. The term “MediaProfile” refers to a parameter set forstoring setting items of the surveillance camera 1000 in associationwith each other. Such setting items may include a setting item fordistributing a stream including image data by the surveillance camera1000. The MediaProfile is stored in the storage unit 1002.

Hereinafter, the MediaProfile will sometimes be called an MP.

An MP 3100 holds a ProfileToken which is an ID of the MP 3100. The MP3100 further holds links to setting items including a VSC 3120 and a VEC3130. The surveillance camera 1000 may hold a plurality ofMediaProfiles. A VideoSource 3110 is a set of parameters describingperformances of one image capturing unit 1003 included in thesurveillance camera 1000.

Hereinafter, the VideoSource will sometimes be called a VS. The VSaccording to this exemplary embodiment corresponds to image pickupdevice setting information regarding setting of an image pickup device.

The VS 3110 may include a VideoSourceToken which is an ID of the VS 3110and a parameter such as a Resolution describing a resolution of imagedata which may be output by the image capturing unit 1003.

The VSC 3120 is a set of parameters for associating a VS 3110 includedin the surveillance camera 1000 with the MP 3100. The VSC 3120 holds aVideoSourceToken describing an ID of the VS 3110. The VSC 3120 holdsBounds designating a cutout size and a cutout position of an imageoutput by the image capturing unit 1003. In the following description ofthis exemplary embodiment, further details of the VSC 3120 will not bedescribed.

The VEC 3130 is a set of parameters for associating an encoder settingregarding compression encoding on image data with the MP 3100. Theencoder setting may be a setting for the compression encoding unit 1004,for example. The VEC 3130 includes a ConfigurationToken which is an IDof the VEC 3130.

The VEC 3130 includes an Encoding designating a compression encodingmethod and a Resolution designating a resolution of an output image. TheVEC 3130 further includes a Quality designating a quality of compressionencoding, a FramerateLimit designating a maximum frame rate of an outputimage, and a BitrateLimit designating a maximum bit rate. In thefollowing description of this exemplary embodiment, further details ofthe VEC will not be described.

The surveillance camera 1000 performs a compression encoding based onthe VEC 3130 on a captured image output from the image capturing unit1003 based on details of the VS 3110 and VSC 3120 and distributes theresulting image data to an external apparatus including the clientapparatus 2000 through the communication unit 1005.

More specifically, the compression encoding unit 1004 encodes thecaptured image in accordance with a parameter such as an encodingmethod, a frame rate or a resolution set by the VEC 3130 to create imagedata.

A StorageConfiguration (hereinafter, sometimes called an SC) 3140 is aset of parameters for holding information for accessing a storage usableby the surveillance camera 1000. Details of the SC 3140 will bedescribed below.

A RecordingConfiguration (hereinafter, sometimes called an RC) 3150 is astructure holding information regarding a Recording abstracting a filefor recording. The Recording is held (stored) in the storage unit 1002in the surveillance camera 1000.

The RC 3150 holds a RecordingToken for identifying a Recording. In otherwords, a RecordingToken is an ID of a Recording. Such a RecordingTokencorresponds to a recording file.

Next, FIGS. 4A to 4E illustrate examples of a definition of aStorageConfiguration according to this exemplary embodiment. Asillustrated in FIG. 4A, a DeviceEntity is included. The DeviceEntityincludes a StorageToken which is an ID of an SC. Here, the StorageTokenis information by which an SC held in the surveillance camera 1000 isuniquely identifiable (that is, an ID of the SC).

The DeviceEntity holds a StorageConfigurationData structure holdingdetail information for accessing a Storage. Details of theStorageConfigurationData (structure) will be described below. In the SC,the DeviceEntity may not be omitted.

FIG. 4B illustrates details of the StorageConfigurationData structure.As illustrated in FIG. 4B, the StorageConfigurationData structure mayinclude a LocalPath, a StorageUri, a User, and a type. The LocalPath isfor holding a mount destination information.

The mount destination information is information used for mounting anexternal storage designated in the SC 3140 into the surveillance camera1000, for example.

An example of the mount destination information may be a path of a mountdestination directory such as “/mnt/cifs 1” in a case where thesurveillance camera 1000 holds a file system. Alternatively, an exampleof the mount destination information may be a drive name or a drivesymbol such as “E” by which a mounted storage is uniquely identifiable.

In a case where the LocalPath is identifiable in the surveillance camera1000, the LocalPath (or mount destination information held by theLocalPath) may be omitted.

The StorageUri holds an address of an external storage mounted by theSC. The StorageUri may be a URI (Uniform Resource Identifier)“//cifs_server/disk 1/share/” designated with an IP address or a hostname, for example.

The StorageUri may be a path such as “/dev/SD card/1” of a device filedescribing an SD card drive in a case where an SD card included in thesurveillance camera 1000 is to be mounted.

Alternatively, various URIs may be designated as the StorageUri inaccordance with an accessing protocol type (type). In a case where anaddress of an external storage to be mounted is identifiable in thesurveillance camera 1000, the information may be omitted.

The User holds authentication information including a user name and apassword for accessing an external storage designated by the StorageUri.Details of the User will be described below. The User may sometimes beomitted in a case where an external storage which does not requireauthentication information is mounted in the surveillance camera 1000.

The type is information for selecting a type of accessing protocol foran external storage. The type holds information describing a type of anexternal storage mounted by an SC from a list of accessing protocoltypes described in “StorageType”, which will be described below. Forexample, the type may be a required item in an SC and is not allowed tobe omitted.

FIG. 4C illustrates details of a UserCredentials structure. TheUserCredentials structure is referred as the User in FIG. 4B. Asillustrated in FIG. 4C, the UserCredentials structure may include aUsername and a Password, for example. The Username holds a user nameusable for accessing an external storage designated by a StorageUri.

The Password holds a password usable for accessing an external storagedesignated by a StorageUri. The Password may be omitted in a case wherethe surveillance camera 1000 accesses an external storage which does notrequire a password.

FIG. 4D illustrates a list of storage accessing protocol types used bythe types above. The types may include an NFS, an SMB, a CIFS, a CDMI,an SD CARD, and an AUTO. The NFS stands for Network File System. The NFSis defined in an RFC 1094, an RFC 1813, an RFC 3530 and so on andincludes a distributed file system and its protocol normally utilized bya UNIX (registered trademark).

The SMB is a widely used file sharing service protocol. The CIFS standsfor Common Internet File System. The CIFS is an extension of SMB and isa standard protocol usable for providing access to a file system over astandard network.

The CDMI stands for Cloud Data Management Interface. The CDMI is astandard protocol usable for providing a cloud service for a storage.The SD CARD refers to an SD memory card. The SD memory card is a type ofthe internal recording medium 1007 included in the surveillance camera1000. The SD CARD is designated when the internal recording medium 1007is mounted.

The AUTO is an option to be designated in a case where a storage mountedby the surveillance camera 1000 is not identifiable by the clientapparatus 2000. If the client apparatus 2000 designates SC of AUTO, thesurveillance camera 1000 selects an appropriate storage in accordancewith independently determined priority levels and an algorithm.

Next, FIG. 4E illustrates details of an SCOption structure. The SCOptionstructure holds a type. The type holds one accessing protocol type asdescribed with reference to FIG. 4D. The type is a list of accessingprotocol types of a storage which may be mounted by the surveillancecamera 1000.

FIG. 5 illustrates an example of a configuration of commands andresponses of Get-StorageConfigurations according to this exemplaryembodiment. (1) in FIG. 5 illustrates details of a GetSCs command to betransmitted from the client apparatus 2000 to the surveillance camera1000. (2) in FIG. 5 illustrates details of a GetSCs response to betransmitted from the surveillance camera 1000 to the client apparatus2000.

The GetSCs command as illustrated in (1) in FIG. 5 allows the clientapparatus 2000 to acquire a list of SCs held by the surveillance camera1000. In the example in (2) in FIG. 5, the surveillance camera 1000returns four SCs 5000 to 5003.

The SC 5000 in (2) in FIG. 5 has storage1 as a value of itsStorageConfigurationToken and AUTO as a value of its type. When the SC5000 is used by the client apparatus 2000, the surveillance camera 1000automatically select a storage to/from data are input/output.

The SC 5001 has storage2 as a value of its StorageToken and CIFS as avalue of its type. When the SC 5001 is used by the client apparatus2000, the surveillance camera 1000 exchanges data with an externalstorage using a CIFS protocol identified by “//cifs_server/disk1/share/”.

The SC 5002 has storage3 as a value of its StorageToken and CDMI as avalue of its type. When the SC 5002 is used by the client apparatus2000, the surveillance camera 1000 exchanges data with a cloud servicestorage using a CDMI protocol identified by“//cdmi:1024/service/export/”.

The SC 5003 has storage4 as a value of its StorageToken and has SD CARDas a value of its type. When the SC 5003 is used by the client apparatus2000, the surveillance camera 1000 exchanges data with the internalrecording medium 1007 which is an SD card identified by “/dev/SDcard/1”.

FIG. 6 illustrates an example of a configuration of commands andresponses in Get-StorageConfigurationOptions according to this exemplaryembodiment. (1) in FIG. 6 illustrates details of a command ofGetSCOptions to be transmitted from the client apparatus 2000 to thesurveillance camera 1000. (2) in FIG. 6, on the other hand, illustratesdetails of a response to GetSCOptions to be returned from thesurveillance camera 1000 to the client apparatus 2000.

As illustrated, in (1) in FIG. 6, the GetSCOptions command allows theclient apparatus 2000 to acquire a list of accessing protocol typessupported by the surveillance camera 1000. For example, (2) in FIG. 6illustrates that accessing protocol types of CIFS, CDMI, SD CARD andAUTO are supported by the surveillance camera 1000.

FIG. 7 illustrates an example of a configuration of commands andresponses in Set-StorageConfiguration. (1) in FIG. 7 illustrates detailsof a SetSC command to be transmitted from the client apparatus 2000 tothe surveillance camera 1000. (2) in FIG. 7, on the other hand,illustrates details of a SetSC response to be returned from thesurveillance camera 1000 to the client apparatus 2000.

The SetSC command as illustrated in (1) in FIG. 7 allows the clientapparatus 2000 to request the surveillance camera 1000 to update detailsof an SC. For example, referring to (1) in FIG. 7, the client apparatus2000 requests the surveillance camera 1000 to change the value of thetype of an SC having storage1 as a value of its StorageToken to AUTO.(2) in FIG. 7 illustrates that such a request has been executed by thesurveillance camera 1000.

FIG. 8 illustrates a command sequence for setting a MediaProfile fordistributing a video image between the surveillance camera 1000 and theclient apparatus 2000. The term “transaction” below refers to a pair ofa command to be transmitted from the client apparatus 2000 to thesurveillance camera 1000 and a response to be returned from thesurveillance camera 1000 to the client apparatus 2000.

A transaction 6000 in FIG. 8 is executed for a network apparatusconnection. The client apparatus 2000 transmits by unicast or multicasta Probe command for connecting a network apparatus to the IP network1500. The surveillance camera 1000 connected to the IP network 1500returns to the client apparatus 2000 a ProbeMatch response notifyingthat it is ready for command reception.

A Subscribe transaction 6001 allows the client apparatus 2000 toinstruct an event distribution to the surveillance camera 1000.

A GetServices transaction 6002 allows the client apparatus 2000 toacquire a type of Web service supported by the surveillance camera 1000and an address URI for using a Web service.

The client apparatus 2000 transmits a GetServices command to thesurveillance camera 1000. The surveillance camera 1000 having receivedthe command returns a response to the command. The surveillance camera1000 is the surveillance camera which has transmitted the response toProbeMatch to the client apparatus 2000 in the transaction 6000.

A GetProfiles transaction 6003 is executed for acquiring a MediaProfilecorresponding to a distribution profile.

The client apparatus 2000 transmits a GetProfiles command to thesurveillance camera 1000. The surveillance camera 1000 having receivedthe GetProfiles command transmits a list of MediaProfiles to the clientapparatus 2000.

Thus, the client apparatus 2000 acquires a list of MediaProfilescurrently usable in the surveillance camera 1000 along withProfileTokens each corresponding to a distribution profile ID foridentifying a MediaProfile. The client apparatus 2000 identifies withthe distribution profile ID a MediaProfile which is a distributionprofile set currently present and distributable within the surveillancecamera 1000 (or within an imaging device).

A transaction 6004 for GetVideoSources allows the client apparatus 2000to acquire a list of VideoSource held in the surveillance camera 1000.

The term VideoSource refers to a set of parameters of performances ofthe image capturing unit 1003 included in the surveillance camera 1000.The VideoSource includes a VideoSourceToken which is an ID of theVideoSource and a Resolution describing a resolution of a captured imagewhich may be output by the image capturing unit 1003.

The client apparatus 2000 transmits a GetVideoSources command to thesurveillance camera 1000. The surveillance camera 1000 having receivedthe GetVideoSources command returns a response to the command to theclient apparatus 2000.

A GetVideoSourceConfigurations transaction 6005 is executed foracquiring a list of VideoSourceConfigurations held by the surveillancecamera 1000.

The client apparatus 2000 transmits a GetVideoSourceConfigurationscommand to the surveillance camera 1000. The surveillance camera 1000having received the GetVideoSourceConfigurations command returns a listincluding an ID of the VSC 3120 held by the surveillance camera 1000 tothe client apparatus 2000.

A GetVECs transaction 6006 allows the client apparatus 2000 to acquire alist of VideoEncoderConfigurations held by the surveillance camera 1000.The list includes the VEC 3130.

The client apparatus 2000 transmits a GetVideoEncoderConfigurationscommand to the surveillance camera 1000. The surveillance camera 1000having received the command returns a response to the command.

Execution of a GetConfigurations transaction 6007 allows the clientapparatus 2000 to acquire set values relating to the imaging controlunit 1006 in the surveillance camera 1000.

The client apparatus 2000 transmits a GetConfigurations command to thesurveillance camera 1000. The surveillance camera 1000 having receivedcommand returns a response to the command to the client apparatus 2000.

A GetVECOptions transaction 6008 allows the client apparatus 2000 toacquire ranges of selections and set values for parameters acceptable bythe surveillance camera 1000 with respect to a VEC designated with anID.

The client apparatus 2000 transmits aGetVideoEncoderConfigurationOptions command to the surveillance camera1000. The surveillance camera 1000 having received the command returns aresponse to the command to the client apparatus 2000.

This transaction allows the client apparatus 2000 to acquire a listincluding an ID of an encoding setting which is stored in the storageunit 1002 from the surveillance camera 1000. This means that theresponse contains PEG and H.264.

A CreateProfile transaction 6009 is executed for requesting creation ofa distribution profile. The client apparatus 2000 transmits aCreateProfile command to the surveillance camera 1000. The surveillancecamera 1000 having received the command returns a response to thecommand.

This transaction allows the client apparatus 2000 to newly create adistribution profile within the surveillance camera 1000 and acquire anID of the created distribution profile. The surveillance camera 1000stores the newly created distribution profile.

More specifically, the control unit 1001 newly creates a MediaProfile inaccordance with the CreateProfile command received by the communicationunit 1005, and a storage control process is executed for storing thecreated MediaProfile in the storage unit 1002.

After the command processing in the transaction, the surveillance camera1000 transmits a MediaProfile change notification event to the clientapparatus 2000 to notify the client apparatus 2000 of that some changehas occurred in the MediaProfile.

An AddVideoSourceConfiguration transaction 6010 is executed forrequesting to add an VSC. The client apparatus 2000 transmits anAddVideoSourceConfiguration command to the surveillance camera 1000. Thesurveillance camera 1000 having received the command returns a responseto the command to the client apparatus 2000.

In this transaction, the client apparatus 2000 designates a distributionprofile ID acquired in the transaction 6009 and the ID of the VSCacquired in the transaction 6005. Thus, the client apparatus 2000associates a desired VSC corresponding to the ID of the designated VSCwith the MediaProfile corresponding to the designated distributionprofile ID.

On the other hand, the surveillance camera 1000 associates and storesthe MediaProfile corresponding to the distribution profile ID designatedby the client apparatus 2000 and a desired VSC corresponding to the IDof the VSC designated by the client apparatus 2000.

An AddVideoEncoderConfiguration transaction 6011 is executed forrequesting to add a VEC. The client apparatus 2000 transmits anAddVideoEncoderConfiguration command to the surveillance camera 1000.The surveillance camera 1000 returns a response to the command to theclient apparatus 2000.

In the transaction, the client apparatus 2000 designates a distributionprofile ID acquired in the transaction 6009 and the ID of the VECacquired in the transaction 6006. This allows the client apparatus 2000to associate the VEC corresponding to the ID of the designated VEC withthe MediaProfile corresponding to the designated distribution profileID.

On the other hand, the surveillance camera 1000 associates and storesthe MediaProfile corresponding to the distribution profile ID designatedby the client apparatus 2000 and a desired VEC corresponding to the IDof the VEC designated by the client apparatus 2000.

After the transactions 6010 and 6011 are processed, the surveillancecamera 1000 transmits a MediaProfile change notification event to theclient apparatus 2000. This may notify the client apparatus 2000 of thatsome change has occurred in the MediaProfile.

A SetVideoEncoderConfiguration transaction 6012 is executed for settingparameters VEC. The client apparatus 2000 transmits aSetVideoEncoderConfiguration command to the surveillance camera 1000.

The surveillance camera 1000 having received the command returns aresponse to the command. In this transaction, the client apparatus 2000defines a setting for the VEC acquired by the transaction 6006 based onthe selection acquired in the transaction 6008. For example, the clientapparatus 2000 changes the compression encoding method and cutout sizefor the surveillance camera 1000. The surveillance camera 1000 storesdefined settings such as a compression encoding setting.

After the transaction is processed, the surveillance camera 1000transmits a VEC change notification event to the client apparatus 2000to notify that some change has occurred in the VEC to the clientapparatus 2000. It should be noted that the SetVideoEncoderConfigurationcommand corresponds to a first encoding method setting command accordingto this exemplary embodiment.

FIG. 9 illustrates a typical command sequence up to an imagedistribution between the surveillance camera 1000 and the clientapparatus 2000.

A GetStreamUri transaction 6020 is executed for requesting to acquire adistribution address. In the transaction, the client apparatus 2000designates the distribution profile ID acquired by the transaction 6009and acquires an address (URI) for acquiring image data, for example, tobe streamed based on settings for the designated distribution profile.

The surveillance camera 1000 returns to the client apparatus 2000 anaddress for streaming image data corresponding details of the VSC andVEC associated with the distribution profile ID designated by the clientapparatus 2000.

A DESCRIBE transaction 6021 is executed for requesting to acquiredistribution information. The client apparatus 2000 transmits a DESCRIBEcommand to the surveillance camera 1000. The surveillance camera 1000having received the command returns a response to the command to theclient apparatus 2000.

In the transaction, the client apparatus 2000 uses an URI acquired bythe transaction 6020 to execute the DESCRIBE command. Thus, the clientapparatus 2000 requests and acquires information on a content to bestreamed by the surveillance camera 1000.

A SETUP transaction 6022 is executed to request distribution settings.The client apparatus 2000 transmits a SETUP command to the surveillancecamera 1000. The surveillance camera 1000 having received the commandreturns a response to the command to the client apparatus 2000.

In the transaction, the client apparatus 2000 causes the surveillancecamera 1000 to prepare for streaming based on detail data regarding thedistribution information acquired by the transaction 6021. This commandis executed to share a transmission method for a stream including asession number between the client apparatus 2000 and the surveillancecamera 1000.

A PLAY transaction 6023 is executed for starting streaming. The clientapparatus 2000 transmits a PLAY command to the surveillance camera 1000.The surveillance camera 1000 having received the command returns aresponse to the command to the client apparatus 2000.

The client apparatus 2000 uses the session number acquired by thetransmission 6022 for transmitting the PLAY command to the surveillancecamera 1000 so that the surveillance camera 1000 may be caused torequest to start streaming.

A stream 6024 is distributed from the surveillance camera 1000 to theclient apparatus 2000. The stream requested to start in the transaction6023 is distributed by the transmission method shared by the transaction6022.

A TEARDOWN transaction 6025 is executed for stopping the distribution.The client apparatus 2000 transmits a TEARDOWN command to thesurveillance camera 1000. The surveillance camera 1000 having receivedthe command returns a response to the command to the client apparatus2000.

In the transaction, the client apparatus 2000 executes the TEARDOWNcommand by designating the session number acquired by the transaction6022 so that the surveillance camera 1000 may be caused to request tostop the streaming.

FIG. 10 illustrates a typical command sequence between the surveillancecamera 1000 and the client apparatus 2000 and between the surveillancecamera 1000 and a storage, involving parameter setting relating to thestorage and accesses to the storage.

A transaction 6050 is for a GetServiceCapabilities command. TheGetServiceCapabilities command is a command for instructing to returnfunction information describing a function supported by the surveillancecamera 1000.

The function information includes information describing whether thesurveillance camera 1000 supports an SC-related command or not. Thefunction information includes information describing a maximum number ofSCs held by the surveillance camera 1000.

A transaction 6051 is for the GetSCs command illustrated in FIG. 5.

A transaction 6052 is for the GetSCOptions command illustrated in FIG.6.

A CreateSCs transaction 6053 is executed for requesting to create an SC.The client apparatus 2000 transmits the CreateSCs command to thesurveillance camera 1000. The surveillance camera 1000 having receivedthe command returns a response to the command.

This transaction allows the client apparatus 2000 to newly create an SCwithin the surveillance camera 1000 and acquire an ID of the created SC.The (storage unit 1002 in) the surveillance camera 1000 stores the newlycreated SC.

A GetStorageConfiguration transaction 6054 is executed to acquire aStorageConfiguration.

The client apparatus 2000 transmits a GetSC command to the surveillancecamera. 1000. Then, the surveillance camera 1000 having received theGetSC command transmits the setting details of the SC designated by thecommand to the client apparatus 2000.

Thus, the client apparatus 2000 acquires a StorageToken corresponding tothe ID for identifying the SC and a list of StorageConfigurationscurrently usable by the surveillance camera 1000. The client apparatus2000 identifies an SC present within the surveillance camera 1000 withits StorageToken.

A SetSC transaction 6055 is executed for setting parameters for the SC.The client apparatus 2000 transmits the SetSC command to thesurveillance camera 1000. The surveillance camera 1000 having receivedthe command returns a response to the command.

Through the transaction, the surveillance camera 1000 mounts a storagedesignated by the SetSC command transmitted from the client apparatus2000. For example, the surveillance camera 1000 transmits a command forrequesting to mount to the storage (network storage) designated by thecommand.

After the transaction is processed, the surveillance camera 1000notifies the client apparatus 2000 of that some change has occurred inthe SC by transmitting an SC change notification event to the clientapparatus 2000. The SetSC command according to this exemplary embodimentcorresponds to a mount command to cause the surveillance camera 1000 tomount a network storage.

A BackupSystem transaction 6056 is executed for requesting to back updata designated by a BackupSystem command to a storage designated by thecommand, for example.

The client apparatus 2000 transmits the command to the surveillancecamera 1000. On the other hand, the surveillance camera 1000 havingreceived the command returns a BackupSystem response. The responseincludes a BackupToken. The surveillance camera 1000 having returned theresponse transfers data to be backed up to a storage designated by thecommand.

The storage is a network storage mounted by the surveillance camera 1000in the transaction 6055, for example. After the backup (involving thetransfer) completes, the surveillance camera 1000 transmits a Backupcompletion event to the client apparatus 2000 in order to notify theclient apparatus 2000 on the IP network 1500 of that the execution ofthe command has completed.

The BackupSystem command according to this exemplary embodimentcorresponds to a backup command. Data to be backed up according to thisexemplary embodiment may include audio data, meta data, and data (suchas system setting information and operation logs) excluding image data.

A Restore transaction 6057 is executed for requesting to restore withinthe surveillance camera 1000 data (such as data backed up in thetransaction 6056) designated by the Restore command, for example.

The client apparatus 2000 transmits the command to the surveillancecamera 1000. In this case, the client apparatus 2000 designates in thecommand a BackupToken acquired in the transaction 6056.

On the other hand, the surveillance camera 1000 having received thecommand reads out from the storage unit 1002 information describingbackup data associated with the BackupToken designated by the command.The surveillance camera 1000 further reads out a StorageToken associatedwith the BackupToken from the storage unit 1002.

The surveillance camera 1000 then determines a storage corresponding tothe read StorageToken as a backup destination storage and reads out thebackup data described by the read information from the backupdestination storage. Next, the surveillance camera 1000 restores theread backup data into (the storage unit 1002 in) the surveillance camera1000.

After the restore process completes, the surveillance camera 1000transmits a Restore completion event to the client apparatus 2000 inorder to notify the client apparatus 2000 on the IP network 1500 of thatthe execution of the command has completed.

An Export (ExportVideos transaction 6058 is executed for requesting thesurveillance camera 1000 to back up image data designated as an argumentof the ExportVideos command to a storage designated as an argument ofthe command, for example.

The client apparatus 2000 transmits the command to the surveillancecamera 1000. On the other hand, the surveillance camera 1000 havingreceived the command returns an Export Videos response to the clientapparatus 2000. The surveillance camera 1000 transfers image data.designated as an argument of the command to a storage designated as anargument of the command.

The storage here is a network storage mounted by the surveillance camera1000 in the transaction 6055, for example. After the transfer completes,the surveillance camera 1000 transmits an Export completion event to theclient apparatus 2000 in order to notify the client apparatus 2000 onthe IP network 1500 of that the execution of the command has completed.

According to this exemplary embodiment, the BackupSytem command andExportVideos command correspond to a record command. In particular,according to this exemplary embodiment, the ExportVideos commandcorresponds to an image record command. According to this exemplaryembodiment, the commands in the transactions 6056, 6057, 6058, and 6059correspond to an access command.

An Archive transaction 6059 is executed for requesting the surveillancecamera 1000 to compress image data designated as an argument of theArchive command and store the compressed image data to a storagedesignated as an argument of the command, for example.

The client apparatus 2000 transmits the command to the surveillancecamera 1000. On the other hand, the surveillance camera 1000 havingreceived the command returns an Archive response to the client apparatus2000. The surveillance camera 1000 compresses image data designated asan argument of the command. Next, the surveillance camera 1000 transfersthe compressed image data to a storage designated as an argument of thecommand.

After the transfer completes, the surveillance camera 1000 transmits anArchive completion event to the client apparatus 2000 in order to notifythe client apparatus 2000 on the FP network 1500 of that the executionof the command has completed.

A RemoveSC transaction 6060 is executed for requesting the surveillancecamera 1000 to unmount a storage designated as an argument of theRemoveSC.

The surveillance camera 1000 executes the unmount of the storagedesignated by the command. More specifically, the client apparatus 2000transmits the command to the surveillance camera 1000. On the otherhand, the surveillance camera 1000 having received the command returns aresponse to the command to the client apparatus 2000.

The surveillance camera 1000 reads out from the storage unit 1002information on an SC corresponding to a StorageToken designated as anargument of the command. The surveillance camera 1000 next executes anunmount process on a storage described by the information based on theread information. For example, the surveillance camera 1000 havingreceived the command executes a similar process to that of the unmountcommand in a Unix (registered trademark) system.

After the transaction is processed, the surveillance camera 1000transmits an SC change notification event to the client apparatus 2000to notify the client apparatus 2000 of that some change has occurred inthe SC.

FIG. 11 illustrates a table 7000 illustrating Tokentypes 7010 ofStorages and accessing protocol types 7020 in association. Here, thetable 7000 is stored in the storage unit 1002. In the table 7000,StorageTokens and RecordingTokens may be stored in a column of theTokentypes 7010. In the table 7000, information regarding units whichaccess storages are stored in a column of the accessing protocol type7020.

For example, in the table 7000, a Tokentype 7011 having a value ofStoreToken1 and an accessing protocol type 7021 having a value ofLocalStorage are associated. The StoreToken1 corresponds to a value ofRecordingToken. In other words, the storage unit 1002 stores a recordingfile designated with StoreToken1.

In the table 7000, a Tokentype 7012 having a value of StoreToken2 and anaccessing protocol type 7022 having a value of NFS are associated. TheStoreToken2 corresponds to the value of StorageToken. In other words,the storage unit 1002 stores a StorageConfiguration designated withStoreToken2.

In the table 7000, a Tokentype 7013 having a value of StoreToken3 and anaccessing protocol type 7023 having a value of CDMI are associated. TheStoreToken3 corresponds to a value of StorageToken. In other words, thestorage unit 1002 stores a StorageConfiguration designated withStoreToken3.

FIG. 12 is a flowchart describing processing in the surveillance camera1000 for receiving a command from the client apparatus 2000 according tothis exemplary embodiment. This processing is executed by the controlunit 1001.

In step S8000, the control unit 1001 determines whether thecommunication unit 1005 has received a command from the client apparatus2000 or not. Here, a command to be received is assumed to be any one ofthe commands illustrated in FIG. 10.

If the control unit 1001 determines that the communication unit 1005 hasreceived a command from the client apparatus 2000, the processing movesto step S8001. On the other hand, if the control unit 1001 determinesthat the communication unit 1005 has not received a command from theclient apparatus 2000, the processing moves to step S8000.

In step S8001, the control unit 1001 determines an accessing protocolcorresponding to the command received by the communication unit 1005.More specifically, the control unit 1001 reads out from the table 7000an accessing protocol type associated with a Token (such as aStorageToken) designated with an argument of the command. Next, thecontrol unit 1001 identifies the read accessing protocol type. Here, theToken includes the Token of the StorageConfiguration created by aCreateStorageConfiguration.

Then, if the read accessing protocol type is identified as LocalStorage.the control unit 1001 advances the processing to step S8002. if the readaccessing protocol type is identified as NFS, the control unit 1001advances the processing to step S8005. If the read accessing protocoltype is identified as CDMI, the control unit 1001 advances theprocessing to step S8007.

If the control unit 1001 determines that the read accessing protocoltype is others (or none of LocalStorage, NIPS, and CDMI), the processingmoves to step S8009.

In step S8002, the control unit 1001 determines whether the commandreceived by the communication unit 1005 determines whether the commandis an ExportVideos command or a Backup command.

If the control unit 1001 determines whether the command received by thecommunication unit 1005 is an ExportVideos command, the processing movesto step S8003. On the other hand, if the control unit 1001 determinesthat the command received by the communication unit 1005 is a Backupcommand, the processing moves to step S8004.

In step S8003, the control unit 1011 transfers image data designated asan argument of the command received by the communication unit 1005 tothe internal recording medium 1007. For example, the image data may beimage data output from the compression encoding unit 1004.

In step S8004, the control unit 1001 instructs the communication unit1005 to return a response indicating error to the command received bythe communication unit 1005 to the client apparatus 2000. This isbecause data to be backed up are not limited to image data, audio data,and meta data, for example, and may not possibly stored in the internalrecording medium 1007.

For example, a case may be assumed that a Token designated as anargument of the command received by the communication unit 1005 is aRecordingToken. Under this assumption, data which may store a recordingfile corresponding to the RecordingToken may be image data, audio data,or meta data only.

On the other hand, the data to be backed up may possibly include systemsetting information and operation logs, for example, of the surveillancecamera 1000. Thus, a recording file corresponding to the RecordingTokenmay not record the data to be backed up. As a result, the surveillancecamera 1000 returns a response indicating this error to the clientapparatus 2000.

In step S8005, the control unit 1001 uses an NFS protocol to access theNAS 1100 on the IP network 1500. For example, the control unit 1001 usesthe NFS protocol to execute processing corresponding to the transactions6056, 6057, and 6058.

In step S8006, the control unit 1001 instructs the communication unit1005 to return a response indicating normal to the command received bythe communication unit 1005 to the client apparatus 2000.

In step S8007, the control unit 1001 uses a CDMI protocol to access thecloud storage 1200 on the Internet 1600. For example, the control unit1001 uses the CDMI protocol to execute processing corresponding totransactions 6056, 6057, and 6058.

In step S8008, the control unit 1001 instructs the communication unit1005 to return a response indicating normal to the command received bythe communication unit 1005 to the client apparatus 2000.

In step S8009, the control unit 1001 instructs the communication unit1005 to return a response indicating error to the command received bythe communication unit 1005 to the client apparatus 2000. Though thecontrol unit 1001 identifies the command received by the communicationunit 1005 in step S8002, the processing may be moved to step S8003 alsoif the command is Archive.

FIG. 13 illustrates a StorageConfiguration screen 9000 which is a userinterface prompting a user of the client apparatus 2000 to access astorage of the surveillance camera 1000 according to this exemplaryembodiment. The screen is to be displayed on the display unit 2003.

Referring to FIG. 13, a radio button corresponding to a LocalStorage9010 corresponds to the accessing protocol type 7021 having a value ofLocalStorage in the table 7000 in FIG. 11. This radio button may bepressed to instruct the surveillance camera 1000 to store image data,for example, to a LocalStorage (such as the internal recording medium1007).

A radio button corresponding to an NES 9020 corresponds to the accessingprotocol type 7022 having a value of NFS in the table 7000. This radiobutton may be pressed to instruct the surveillance camera 1000 to storeimage data, for example, to the NAS 1100 by using the NES protocol.

A radio button corresponding to a CDMI 9030 corresponds to the accessingprotocol type 7023 having a value of CDMI in the table 7000. This radiobutton may be pressed to instruct the surveillance camera 1000 to storeimage data, for example, to the cloud storage 1200 by using a CDMIprotocol.

The radio button corresponding to the LocalStorage 9010, the radiobutton corresponding to the NFS 9020, and the radio button correspondingto the CDMI 9030 are pressed alternatively by a user.

A SET button 9040 may be pressed to execute the transactions 6056, 6057,and 6058 by using, as an argument, information describing an accessingprotocol type corresponding to one radio button selected by a user, forexample, among those radio buttons.

A CANCEL button 9041 may be pressed to close the StorageConfigurationscreen 9000 (exit). Here, designation of a Token is not necessary if aStorageConfiguration is created by the CreateStorageConfigurationcommand. A StorageType and a Storage path (address) are designated toexecute the CreateStorageConfiguration command. Then, the surveillancecamera 1000 assigns a Token and returns it to the client apparatus 2000in response to the command.

As described above, the surveillance camera 1000 of this exemplaryembodiment may store image data, for example, to an appropriate storagein accordance with a Token, which is designated by the client apparatus2000, in a storage. As a result, the client apparatus 2000 may only berequired to grasp a Token in a storage to cause the surveillance camera1000 to store image data, for example, to the corresponding storage.

According to this exemplary embodiment, the client apparatus 2000 mayonly be required to designate Tokens corresponding to the internalrecording medium 1007, NAS 1100, and cloud storage 1200 to cause thesurveillance camera 1000 to record image data, for example, to thesestorages. As a result, a user who operates the client apparatus 2000 isallowed to more easily instruct the surveillance camera 1000 to storeimage data, for example, to the storages.

The flowchart in FIG. 12 according to this exemplary embodiment assumesa case where a StorageToken and a RecordingToken are designated asarguments of commands received by the communication unit 1005. Forexample, a case may be assumed where an accessing protocol type asillustrated in FIG. 4D is designated as an argument of a command.

Processing for receiving a command from the client apparatus 2000 to beperformed in the surveillance camera 1000 under the assumption will bedescribed below with reference to a flowchart in FIG. 12. Like numbersrefer to like parts to those described above, and the description willsometimes be omitted.

In step S8001, the control unit 1001 determines an accessing protocolcorresponding to a command received by the communication unit 1005. Morespecifically, the control unit 1001 determines an accessing protocoltype designated as an argument of the command.

If the control unit 1001 determines that the designated accessingprotocol type is LocalStorage, the processing moves to step S8002. Ifthe control unit 1001 determines that the designated accessing protocoltype is NFS, the processing moves to step S8005. If the control unit1001 determines that the designated accessing protocol type is CDMI, theprocessing moves to step S8007.

If the control unit 1001 determines that the designated accessingprotocol type is others (or none of LocalStorage, NFS, and CDMI), theprocessing moves to step S8009.

According to this exemplary embodiment, as illustrated in FIG. 12, aStorageConfiguration screen which is a user interface for allowing auser to set an accessing protocol type is displayed. However, anembodiment of the present invention is not limited thereto.

For example, as the StorageConfiguration screen, a screen may be usedinstead which is a user interface allowing a user to set a Token of aStorage (StorageToken, and RecordingToken).

According to this exemplary embodiment, six representative StorageTypesincluding SMB, CIFS, CDMI, SD CARD, and AUTO are used as illustrated inFIG. 4D. However, an embodiment of the present invention is not limitedthereto.

For example, an FTP (FileTransfer Protocol) may be used as theStorageType instead of the six types. For example, as the StorageTypes,various storages may be used which may be mounted in the surveillancecamera 1000 such as an USB drive and a BD-R drive which are internalrecording media.

For the ExportVideos transaction 6058 according to this exemplaryembodiment, the client apparatus 2000 may apply various methods fordesignating image data subject to Export with the ExportVideos command.

For example, a ProfileToken identifying the MP 3100 held in thesurveillance camera 1000 may be designated as an argument of thecommand. Thus, image data to be streamed in accordance with settings forthe MP 3100 is subject to Export (to be backed up to a storage).

Alternatively, for example, a RecordingToken identifying theRecordingConfiguration 3150 held in the surveillance camera 1000 may bedesignated as an argument of the command. Thus, a recording filecorresponding to the RecordingToken is subject to Export (to be backedup in a storage).

According to this exemplary embodiment, the surveillance camera 1000compresses image data designated with an argument of the Archive commandin the Archive transaction 6059. An embodiment of the present inventionis not limited thereto. For example, in the transaction, the image datamay be compressed by a storage (such as a network storage in FIG. 10).

This exemplary embodiment assumes LocalStorage, NES, and CDMI asaccessing protocol types to be used by the surveillance camera 1000 toaccess a storage. However, an embodiment of the present invention is notlimited thereto. For example, as such an accessing protocol type, aunique protocol provided by a manufacturer of the surveillance camera1000 or a manufacturer of a storage may be used.

Other Exemplary Embodiments

The present invention may be implemented by processing includingsupplying a program which implement one or more functions of theaforementioned exemplary embodiment to a system or an apparatus over anetwork or through a storage medium and reading and executing theprogram by one or more processors in a computer in the system orapparatus. The present invention may be implemented by a circuit (suchas an ASIC) which may implement one or more functions.

Having described the exemplary embodiment of the present invention indetail, the present invention. is not limited to specific exemplaryembodiments. Various embodiments are included in the present inventionwithout departing from the scope and spirit of the present invention.

Embodiments of the present invention can also be realized by a computerof a system or apparatus that reads out and executes computer executableinstructions recorded on a storage medium (e.g., non-transitorycomputer-readable storage medium) to perform the functions of one ormore of the above-described embodiment(s) of the present invention, andby a method performed by the computer of the system or apparatus by, forexample, reading out and executing the computer executable instructionsfrom the storage medium to perform the functions of one or more of theabove-described embodiment(s). The computer may comprise one or more ofa central processing unit (CPU), micro processing unit (MPU), or othercircuitry, and may include a network of separate computers or separatecomputer processors. The computer executable instructions may beprovided to the computer, for example, from a network or the storagemedium. The storage medium may include, for example, one or more of ahard disk, a random-access memory (RAM), a read only memory (ROM), astorage of distributed computing systems, an optical disk (such as acompact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)™),a flash memory device, a memory card, and the like.

While the present invention has been described with reference toexemplary embodiments, it is to be understood that the invention is notlimited to the disclosed exemplary embodiments. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all such modifications and equivalent structures andfunctions.

This application claims the benefit of Japanese Patent Application No.2014-039030, filed Feb. 28, 2014, which is hereby incorporated byreference herein in its entirety.

1. An imaging apparatus to communicate with an external apparatus over anetwork and mount a first storage and/or a second storage, the imagingapparatus comprising: a receiving unit capable of receiving, from theexternal apparatus over the network, a first mount command to allow theimaging apparatus to mount the first storage and a second mount commandto allow the imaging apparatus to mount the second storage; a mountingunit configured to mount the first storage and/or the second storage;and a control unit configured to instruct the mounting unit, wherein, ifa mount command received by the receiving unit is a first mount command,the control unit instructs the mounting unit to mount the first storageby a first access protocol for accessing the first storage and, wherein,the mount command received by the receiving unit is a second mountcommand, the control unit instructs the mounting unit to mount thesecond storage by a second access protocol which is an access protocolfor accessing the second storage and is different from the first accessprotocol.
 2. The imaging apparatus according to claim 1, furthercomprising a transmitting unit configured to transmit a response to theexternal apparatus over a network when the receiving unit receives acommand, wherein the receiving unit receives, over a network, a firstrecord command to record data of the imaging apparatus in the firststorage and a second record command to record data of the imagingapparatus in the second storage from the external apparatus, and whereinthe control unit instructs the transmitting unit to transmit a responseindicating error to the external apparatus over a network if the firstrecord command is received when the mounting unit does not mount thefirst storage, and instructs the transmitting unit to transmit aresponse indicating error to the external apparatus over a network ifthe first record command is received when the mounting unit does notmount the second storage.
 3. The imaging apparatus according to claim 1,further comprising a transmitting unit configured to transmit a responseto the external apparatus over a network when the receiving unitreceives a command, wherein, if the first mount command or the secondmount command is received, a response including information describingan identification (ID) of a storage mounted by the mounting unit istransmitted to the external apparatus over a network.
 4. The imagingapparatus according to claim 2, wherein the first storage is a storagemedium to be removably inserted to the imaging apparatus; wherein thefirst record command includes a first image record command to recordimage data within the imaging apparatus to the first storage or a firstbackup command to record data excluding the image data within theimaging apparatus to the first storage, and wherein the control unitinstructs the transmitting unit to transmit a response indicating normalto the external apparatus over a network if a first image record commandis received by the receiving unit, and instructs the transmitting unitto transmit a response indicating error to the external apparatus over anetwork if a first backup command is received by the receiving unit. 5.The imaging apparatus according to claim 2, wherein the second storageis an external storage which communicates with the imaging apparatusover a network; wherein the second record command includes a secondimage record command to record image data within the imaging apparatusto the second storage or a second backup command to record dataexcluding the image data within the imaging apparatus to the secondstorage, and wherein the control unit instructs the transmitting unit totransmit a response indicating normal to the external apparatus over anetwork if a second image record command is received by the receivingunit, and instructs the transmitting unit to transmit a responseindicating normal to the external apparatus over a network if a secondbackup command is received by the receiving unit.
 6. (canceled)
 7. Theimaging apparatus according to claim 1, further comprising a storageunit configured to associate and store information describing anidentification (ID) of a storage mounted by the mounting unit and anaccess protocol for accessing a storage included in the mount command,wherein the mount command contains information regarding an accessprotocol for accessing a storage to be mounted, and wherein the controlunit performs mount control by using an access protocol associated withinformation describing an ID of a storage in the storage unit.
 8. Anexternal apparatus to communicate over a network with an imagingapparatus configured to mount a first storage by a first access protocolfor accessing a first storage and mount a second storage by an accessprotocol for accessing a second storage which is different from thefirst storage, the external apparatus comprising: a transmitting unitcapable of transmitting, to the imaging apparatus over a network, afirst mount command which is a command corresponding to a first protocolto allow the imaging apparatus to mount the first storage and a secondmount command to allow the imaging apparatus to mount the secondstorage; and a receiving unit configured to receive a response to acommand transmitted by the transmitting unit from the external apparatusover a network.
 9. A control method for an imaging apparatus tocommunicate with an external apparatus over a network and mount a firststorage and/or a second storage, the control method comprising:receiving, from the external apparatus over the network, a first mountcommand to allow the imaging apparatus to mount the first storage and asecond mount command to allow the imaging apparatus to mount the secondstorage; mounting, via a mounting unit, the first storage and/or thesecond storage; and instructing the mounting unit, wherein, if areceived mount command is a first mount command, instructing includesinstructing the mounting unit to mount the first storage by a firstaccess protocol for accessing the first storage and, wherein, if thereceived mount command is a second mount command, instructing includesinstructing the mounting unit to mount the second storage by a secondaccess protocol which is an access protocol for accessing the secondstorage and is different from the first access protocol.